יש 3 קערות שבהן יש גולות לבנות שחורות ומעורבבות. על כל קערה רשום פתק: שחור לבן ומעורבב. נתון שאף אחד מהפתקים לא נכון.
בכמה שליפות של כדורים תוכל לדעת באיזו קערה נמצא כל צבע?
תשובות
הוסף תשובה
|
לצפיה בתשובות
מאי 2026
שליפה אחת מהמעורבב
אם הוצאתי שחור הפתק הנכון שחור ואם לבן אז הפתק הנכון לבן
והפתק מעורבב שייך לקערה שלא הוצאנו ממנה עדיין פתק
בירור טלפוני קצר של התאמה לתנאי המשרה המוצעת ואז שיחת טלפון קצרה עם המגייסת ואז ראיון פרונטלי מקצועי עם שאלת מערכות אחת ואז נפלתי, אבל במקור היה אמור להיות עוד ראיון עם מנהלת הפרוייקט ו-HR ואז סיווג בטחוני.
שאלות מתוך הראיון
יש לך תור של הודעות נכנסות ולכל הודעה יש ID לא ייחודי. כיצד תנהלי את עיבוד ההודעות במקביל (Multi-workers) בצורה יעילה, כך ששני וורקרים לא יעבדו בו-זמנית על הודעות עם ID זהה? המטרה היא למקסם את קצב העיבוד (Throughput) ולוודא שוורקרים לא יחכו ללא צורך.
תשובות
הוסף תשובה
|
לצפיה בתשובות
מרץ 2026
עקרונות הפתרון: ניהול עיבוד מקבילי מבוסס מפתחות
מנגנון Distributed Locking ברמת ה-ID:
שימוש במבנה נתונים מסוג HashSet המשותף לכל הוורקרים (למשל בתוך Redis) כדי לעקוב בזמן אמת אחרי ה-IDs שנמצאים כרגע בתהליך עיבוד ("In-Flight").
מניעת התנגשויות (Concurrency Control):
לפני שוורקר מושך הודעה, הוא בודק ב-HashSet האם ה-ID שלה כבר קיים.
אם ה-ID לא קיים: הוא מוסיף אותו ל-HashSet ומתחיל בעיבוד.
אם ה-ID קיים: הוורקר מדלג להודעה הבאה בתור (כדי לא להמתין סתם) או מעביר את ההודעה לתור המתנה ייעודי לאותו ID.
שחרור וניקוי (Cleanup):
עם סיום העיבוד, הוורקר מסיר את ה-ID מה-HashSet, ובכך "משחרר" את המפתח הזה לעיבוד של ההודעה הבאה בתור עם אותו מזהה.
אלביט מערכות בע"מ היא חברה ישראלית העוסקת בפיתוח ובייצור של מערכות אלקטרוניות ואמצעי לחימה מתקדמים. אלביט מערכות מפתחת, משווקת ומבצעת אינטגרציה של מערכות אלקטרוניות ואלקטרו-אופטיות ביטחוניות מתקדמות ללקוחות בכל רחבי העולם. החברה מתמקדת בפיתוח מערכות שליטה ובקרה, ומערכות מודיעין לשוק הצבאי, בביצוע השבחות של כלי טיס, כלי שיט ורכבים ובפיתוח ומסירה של מערכות כלי טיס בלתי מאוישים.